All large companies and corporations, in the course of conducting their business activities, need to gather and accumulate large amount of information on a daily basis. One solution universally adopted is to store this information under the form of databases, most commonly in a model of databases referred to as a relational database. For all practical purposes a relational database is a collection of tables, with defined relations between them, under the control of a specific relational database management system (RDBMS) and equipped with a structured query language (SQL) so that information can be stored, updated and retrieved efficiently. Other models exist like a hierarchical model. Whichever model is used, a collection of databases need to be further organized when the overall amount of data to store and organize grows significantly. Indeed, it is now common that terabytes (i.e.: 1012 bytes) of information data need to be stored, and contents made permanently and readily accessible, just to allow daily operations of those large companies; hence, the concept of data warehouse that has been developed since the 80's. Data warehouses and data marts are the repositories set up by any large organization to hold their strategic operational and business data. The way a warehouse is organized has much to do with business intelligence. The warehouse structure and tools devised to extract, transform and load data from/to the repository along with the presentation and reporting of the retrieved information are key to allow any thorough analysis of its contents so that all warehouse users can make informed decisions in spite of the huge amount of data that may have to be involved.
In the travel industry such a large organization that needs to store and organize large amounts of data is a typically an airline or a GDS, i.e.: a ‘global distribution system’. A GDS is any of a few large travel service providers which support, on a world-wide basis, all the actors of the travel industry including airlines, hotel chains, car rental companies, traditional travel agencies, other online travel service providers, etc. Such a GDS is for example AMADEUS, a European travel service provider with headquarters in Madrid, Spain. GDS's have thus to keep track, from their large storing, computing and networking resources, of data regarding possibly millions of travelers, thousands of travel agencies and online service providers and tenths of airline and transportation companies. To this end, any GDS needs to set up numerous large databases holding such things as all the schedules of the transportation companies supported, the myriad of fares they provide that are updated on a daily basis, and all the ticketing data of millions of travelers.
Organization such as an airline or a GDS often needs to rely on statistics to define its strategy. Statistics may also be provided to end-users as a service that facilitates their purchases. Statistics often require analyzing huge amount of data spread in the numerous databases forming the data warehouse of an organization such as an airline or a GDS
Yet, such analyze of huge amount of spread data is not an easy task. In spite of the fact that databases are specifically devised to facilitate the retrieving of data it remains that the analysis of the contents of a warehouse implicitly means that data from different databases, possibly involving many large tables, need to be cross-compared so meaningful pieces of information can be extracted and presented to the end user in response to such a query. Typically, with relational databases, this implies that join operations be performed on tables entries. These operations are known to be costly in term of processing resources and time to execute. Also, accessing multiple databases from possibly separate computerized platforms triggers numerous I/O (Input/Output) operations that are intrinsically much slower than if processing can be confined to a single internal computerized unit. And, all of this interferes with the regular production work of warehouse databases that need to be always operational and capable of handling simultaneously many users. This renders difficult, if not impossible, to process in real time, i.e. within an expected time frame of a few milliseconds to a few tenths of milliseconds, sophisticated queries that involve the fetching of large amounts of information like the gathering and computation of daily statistical data.
Thus, it is an object of the invention to disclose a data structure kept updated from a warehouse of databases and aimed at expediting the retrieval of statistical data so that even sophisticated queries can be processed and responded in real time in spite of the large amount of data possibly involved.
Further objects, features and advantages of the present invention will become apparent to the ones skilled in the art upon examination of the following description in reference to the accompanying drawings. It is intended that any additional advantages be incorporated herein.